import { Post } from '../../config.js'

class Api {
  /**
   * 用户管理列表
   * @param {object} params 参数对象
   * @desc {string} acc_id 身份验证参数,登陆时返回
   * @desc {string} page 页码
   * @desc {string} page_size 每页个数
   * @desc {string} search 查询
   * @desc {string} sort_field 排序字段
   * @desc {string} sort_type 0正序
   * @desc {string} type 捎货用户类型:普通用户-1捎货用户类型>0
   * @desc {string} vip 普通用户-1vip用户类型1
   * @desc {string} status 用户状态:1为有效,0为禁用
   * @desc {string} is_withdraw 能否提现:0为允许,1为不允许
   * @desc {string} start_time 用户注册开始查询时间
   * @desc {string} end_time 用户注册结束查询时间
   * @return {promise} api
   */
  userList (params) {
    const data = {
      Copyright: 'v1',
      Interface: 'UserInfo',
      Command: 'userList',
      Params: params
    }
    return Post(data)
  }
  /**
   * 修改用户状态
   * @param {object} params 参数对象
   * @desc {string} acc_id 身份验证参数,登陆时返回
   * @desc {string} uids 用户id
   * @desc {string} status 用户状态:1为有效,0为禁用,''不改变
   * @desc {string} is_withdraw 能否提现:0为允许,1为不允许,''不改变
   * @return {promise} api
   */
  alertUserStatus (params) {
    const data = {
      Copyright: 'v1',
      Interface: 'UserInfo',
      Command: 'alertUserStatus',
      Params: params
    }
    return Post(data)
  }
  /**
   * 创建用户
   * @param {object} params 参数对象
   * @desc {string} acc_id 身份验证参数,登陆时返回
   * @desc {string} mobile 用户手机号
   * @return {promise} api
   */
  createUser (params) {
    const data = {
      Copyright: 'v1',
      Interface: 'UserInfo',
      Command: 'createUser',
      Params: params
    }
    return Post(data)
  }
  /**
   * 修改用户类型(比如成为捎货人或者VIP)
   * @param {object} params 参数对象
   * @desc {string} acc_id 身份验证参数,登陆时返回
   * @desc {string} uids 用户id
   * @desc {string} shaohuo 成为捎货人:-1为变成普通用户,0为不改变,>1为变成先相应的捎货人
   * @desc {string} vip 能否提现:-1为变成非会员,0为不改变,1为成为会员
   * @return {promise} api
   */
  alertUserType (params) {
    const data = {
      Copyright: 'v1',
      Interface: 'UserInfo',
      Command: 'alertUserType',
      Params: params
    }
    return Post(data)
  }
}

const AccountService = new Api()
export default AccountService
